Stop overpaying for AI.
Let the router cook.
{{agentName}} routes every turn, runs tools safely, and remembers what matters across CLI, Web UI, and chat.
Every turn earns the right model.
A local signal pass and a small judge model choose the cheapest capable tier before execution starts.
Read the message
The full turn is classified by difficulty, risk, context, and intent.
Extract signals
Local rules identify debug work, strict formats, long context, and agentic tasks.
Judge the tier
A small model selects the lowest tier that can complete the work reliably.
Run the model
The chosen tier maps to a concrete provider profile for that turn.
Greetings and one liners
Routine edits and focused tasks
Refactors and nontrivial debugging
Production and cross service work
Guardrails keep routing stable.
No downgrade
Recent higher tier turns stay warm, protecting continuity and model cache reuse.
Sticky tier
Short follow ups inherit the active workstream instead of dropping context.
Complaint up
A failed answer raises the next turn instead of repeating the same attempt.
One runtime. Three ways in.
CLI, Web UI, and chat share the same gateway, memory, tools, approvals, and usage accounting.
# configure a provider once
$ {{cli}} onboard
# start the local gateway
$ {{cli}} gateway run
✓ gateway live on 127.0.0.1:18791
✓ router: recommended (on device)
✓ memory + embeddings ready
Web UI
Run sessions, review approvals, publish artifacts, and inspect replay data.
Chat channels
Bring the same runtime into the messaging tools your team already uses.
Built for long running usefulness.
Memory persists, tools stay controlled, and context remains focused across extended workstreams.
Tool result compression
Large outputs stay useful without flooding model context. Full results remain available on disk.
Personal memory
Facts, notes, and task traces return through local keyword and semantic search.
Layered sandbox
File, shell, web, git, and media tools run behind policy and approval layers.
Meta skills
Package recurring work as reusable, composable routines.
Durable sessions
Transcripts, summaries, artifacts, cost, and replay data persist.
Built in web search
Bring fresh external context into any turn through a configured provider.
On device embeddings
Local ONNX embeddings power semantic recall without sending memory to a remote model.
One schema. Every provider.
Point {{agentName}} at the backend that fits the work. Switching never requires application code changes.
Running in minutes.
Windows, macOS, and Linux use the same setup path.
Install uv
{{agentName}} installs into an isolated tool environment and manages its own Python, so you do not need Python first.
curl -LsSf https://astral.sh/uv/install.sh | sh
. "$HOME/.local/bin/env"
Install {{agentName}}
Pull the recommended profile, router plus the on device memory stack, from the latest release wheel.
uv tool install --python 3.12 "{{pkg}}[recommended]"
Connect a provider
Run the onboarding wizard to pick a backend and set your key, or point it straight at one with no prompts.
{{cli}} onboard
# no prompts:
{{cli}} onboard --provider openrouter \
--api-key-env OPENROUTER_API_KEY
Run the gateway
Start the shared runtime that every surface connects to, then open the local control console in your browser.
{{cli}} gateway run
# → http://127.0.0.1:18791/control/
Run your first turn
Chat interactively, or fire a single one shot turn. Smart routing sends each turn to the cheapest capable model.
{{cli}} chat
# or one shot:
{{cli}} agent -m "Summarize the README here"
Builders, not a brand deck.
A small crew at {{team}} ships {{agentName}} end to end: routing, memory, sandbox, and the surfaces you run it through.
Run more. Spend less.
Route each turn to the lowest cost model that can complete it reliably.